Data transmission method and radio system

ABSTRACT

The invention relates to a data transmission method and a radio system that comprises a first ( 260 ) transceiver and a second transceiver ( 264 ) that are in radio contact with each other. The first transceiver ( 260 ) comprises means ( 500, 504 ) for forming data blocks for transmission in such a manner that the data blocks are given identifiers for identification. The second transceiver ( 264 ) comprises means ( 512 ) for receiving data blocks transmitted and retransmitted by the first transceiver, and means ( 524 ) for detecting a failure in receiving a data block. The second transceiver ( 264 ) comprises means ( 530 ) for maintaining information on the position of a window belonging to a finite identifier space, and means ( 524 ) for comparing the identifiers of the re-received data block and the earlier received data block with each other and for defining the data blocks as the same, and means ( 524 ) for combining the data blocks defined as the same.

FIELD OF THE INVENTION

The invention relates to a method of transmitting data blocks in a radiosystem from a first transceiver to a second transceiver, and to a radiosystem employing the method. Both the method and the radio systememploying the method are especially suited for EGPRS (Enhanced GeneralPacket Radio Service).

BACKGROUND OF THE INVENTION

Transmitters and receivers used in a radio system typically formtransceivers, examples of which include transceivers in subscriberterminals, such as mobile phones, and transceivers of a base station.

The aim in data transmission is often to ensure its success betweentransceivers. Digital data transmission often uses retransmitting errorcorrection, in which the sender is notified of transmission errors, whothen retransmits the erroneous information. One known method isSelective Reject ARQ (Automatic Repeat reQuest), in which a transmittercan transmit a new block before the previous one is acknowledged and thetransmitter can retransmit only the blocks whose reception fails. Agroup of data frames that the transmitter can transmit consecutivelywithout acknowledgement from the receiver is in this protocol called atransmission window.

EGPRS (Enhanced General Packet Radio Service) is a GSM-based (GlobalSystem for Mobile Communications) system utilising packet-switchedtransmission. EGPRS uses EDGE (Enhanced Data Rates for GSM Evolution)technology to increase data transmission capacity. In addition to GMSK(Gaussian Minimum-Shift Keying) modulation normally used in GMS, 8-PSK(8-Phase Shift Keying) modulation can be used for packet data channels.The aim is mainly to implement non-real-time data transmission services,such as file copying and the use of an Internet browser. The aim is alsoto implement packet-switched real-time services for instance to transmitspeech and video. In principle, the data transmission capacity can varyfrom a few kilobits per second up to 400 kilobits per second.

Let us now examine an example of error correction in the above-mentionedsystem on a connection between two transceivers. The first transceivertransmits data in data blocks to the second transceiver. The firsttransceiver attaches identifiers to the data blocks to be transmittedfor identification during reception in such a manner that theidentifiers are reserved from a finite identifier space. The identifiersare reserved cyclically in such a manner that when the last identifieris used, the cycle starts again from the beginning. When the receptionof a data block fails in the second transceiver, the block needs to beretransmitted. The bi-directional connection between the first and thesecond transceiver makes it possible for the second transceiver totransmit a retransmission request to the first transceiver. On the basisof the received retransmission request, the first transceiverretransmits the data block to the second transceiver that identifies theblock as a retransmission of the earlier failed block on the basis ofthe identifier. The second transceiver maintains information on theposition of a receiver window related to the ARQ protocol. The window isa part of the identifier space and always begins from the first blockthat has not yet been correctly received. Typically, the size of thewindow is half of the identifier space. If the second transceiverreceives a block whose identifier is not in the window, it knows thatsaid block has already been received once and it can be disregarded.

To further improve performance, it is possible to use an incrementalredundancy, in which the second transceiver is equipped with a receivermemory to which all data blocks whose reception failed are stored.Failure in reception may be caused by the fact, for instance, that theconditions of the used radio channel change so quickly that it isimpossible for the radio system to optimally select a code rate inadvance for the incoming transmission. The use of the incrementalredundancy allows for a better adaptation to changing conditions. Datablocks whose reception failed are retransmitted from the firsttransceiver. Retransmitted data blocks and stored data blocks having thesame identifiers are combined, after which the second transceiverdecodes the combined data blocks. During the combination, the amount ofinformation available for decoding increases in comparison with theamount of information in a single data block, so decoding has a higherprobability of success.

The intention thus is to combine the different transmissions of the samedata block. That the data blocks are the same is determined from thefact that they have the same identifiers.

The cycling of identifiers causes a problem, because when data blocksare compared with each other, data blocks may be found with the sameidentifiers, even though the data blocks are actually different. In thedata transmission described above, it is possible that data blockshaving the same identifier are erroneously considered the same forcombination purposes, even though they are different. When differentdata blocks are combined, transceiver operation fails.

Another problem is caused by the fact that the incremental redundancy(IR) combination is done before channel coding, whereas the SelectiveReject ARQ protocol operates on a higher protocol layer. In practice,the IR combination and ARQ protocol can reside physically in differentplaces or devices, in which case the information in the ARQ protocolcannot be used in the IR combination.

BRIEF DESCRIPTION OF THE INVENTION

It is thus an object of the invention to provide a method and a radiosystem implementing the method so as to avoid combining wrong datablocks. This is achieved by a method of transmitting data blocks in aradio system from a first transceiver to a second transceiver, in whichmethod the first transceiver attaches identifiers to the data blocks tobe transmitted for identification, the identifiers being reservedcyclically from a finite identifier space, the second transceiverreceives the data blocks, and when the reception of a data block fails,the second transceiver stores the data block into a reception memory andthe first transceiver retransmits said data block with the sameidentifier as the original transmission and the second transceiverre-receives said data block.

In the method, the second transceiver maintains information on theposition of a window belonging to the finite identifier space; when thesecond transceiver re-receives the data block, the identifiers of there-received data block and the earlier received data block are comparedwith each other, and the data blocks are defined as the same, if theyhave the same identifier and it is detected that said identifier hasbeen in the window maintained by the second transceiver continuouslyfrom the reception time of the earlier received data block to thereception time of the re-received data block; the second transceivercombines the data blocks defined as the same.

The invention also relates to a radio system comprising a first and asecond transceiver that are in radio contact with each other; the firsttransceiver comprises means for forming data blocks for transmission insuch a manner that the data blocks are given identifiers foridentification, the identifiers being reserved cyclically from a finiteidentifier space, means for receiving a retransmission requesttransmitted by the second transceiver, and means for transmitting datablocks to the second transceiver and for re-transmitting a data block tothe second transceiver; the second transceiver comprises means forreceiving data blocks transmitted by the first transceiver and forreceiving a data block retransmitted by the first transceiver, means fordetecting a failure in the reception of a data block, a reception memoryto which a data block whose reception fails is stored, and means fortransmitting to the first transceiver a retransmission request of a datablock.

The second transceiver comprises means for maintaining information onthe position of a window belonging to the finite identifier space, andmeans for comparing the identifiers of the re-received data block andthe earlier received data block with each other and for defining thedata blocks as the same, if they have the same identifier and saididentifier has been in the window maintained by the second transceivercontinuously from the reception time of the earlier received data blockto the reception time of the re-received data block, and means forcombining data blocks defined as the same.

Preferred embodiments of the invention are disclosed in the dependentclaims.

The invention is based on the idea that the second transceiver maintainsa window in the identifier space and compares the identifiers ofreceived data blocks with the identifiers in the window. When thetransceiver receives a data block whose position according to theidentifier is not in the window, the window is shifted in the identifierspace to bring the position according to said identifier to the windowfollowing the window shift. If the data block is a re-received datablock, the re-received data block and an earlier received data blockhaving the same identifier and stored in the memory are considered thesame, if the identifier has been in the window during the entiretransmission-retransmission process. This way, it is possible to ensurethat the blocks having the same identifier really contain the sameinformation that can be combined.

The solutions according to the preferred embodiments of the inventionprovide several advantages. The solution prevent the combination ofwrong data blocks, because only data blocks having the same identifierand within the same cycle, i.e. data blocks that truly are the same, areconsidered the same data blocks that can be combined. Thus, wrong datablocks are not combined and the connection quality can be improved.

BRIEF DESCRIPTION OF THE FIGURES

The invention will now be described in greater detail by means ofpreferred embodiments and with reference to the attached drawings, inwhich

FIG. 1A shows a typical structure of a radio system according to thepreferred embodiments of the invention,

FIG. 1B shows the establishment of a circuit-switched transmission linkbetween a subscriber terminal and a public switched telephone network,

FIG. 1C shows a packet-switched transmission link,

FIG. 2 shows an example of a method according a first preferredembodiment of the invention,

FIG. 3 shows a method block diagram of a second preferred embodiment ofthe invention,

FIG. 4 shows an example of a solution according to an embodiment of theinvention, and

FIG. 5 illustrates an example of the structure of a first and a secondtransceiver.

DETAILED DESCRIPTION OF THE INVENTION

A typical structure of a radio system according to the preferredembodiments and its interfaces with a fixed telephone network and apacket-switched network are described with reference to FIG. 1A. FIG. 1Aonly contains the blocks that are essential to explain the embodiments,but it is clear to a person skilled in the art that a conventionalcellular packet network also contains other functions and structuresthat need not be explained in more detail herein. The invention is mostpreferably used in EGPRS. The invention operates on both uplink anddownlink.

A cellular network typically comprises a fixed network infrastructure,i.e. a network part, and as transceivers 260 subscriber terminals thatcan be fixed, installed in a vehicle or portable terminals. The networkpart has base stations 100. A base station controller 102 connected toseveral base stations 100 controls them in a centralized manner. Thebase station 100 has transceivers 264. The base station 100 typicallyhas one to sixteen transceivers 264. One transceiver 264 provides radiocapacity for one TDMA (Time Division Multiple Access) frame, i.e.typically for eight time-slots.

The base station 100 has a control unit 118 that controls the operationof the transceivers 264 and a multiplexer 116. The multiplexer 116places traffic and control channels used by several transceivers 264 onone transmission link 160. The structure of the transmission link 160 isexactly defined, and it is called an Abis interface.

The transceivers 264 of the base station 100 are connected to an antennaunit 112 that establishes a bi-directional radio link 170 to thesubscriber terminal 260. The structure of frames transmitted on thebi-directional radio link 170 is also exactly defined, and it is calledan air interface.

The subscriber terminal 260 can be a normal mobile phone, for instance,and a portable computer 152, for instance, can be attached to it bymeans of an expansion card and used in ordering and processing packetsin packet transmission.

The base station controller 102 comprises a switching field 120 and acontrol unit 124. The switching field 120 is used to switch speech anddata and to connect signalling circuits. A base station system made upof the base station 100 and the base station controller 102 alsocomprises a transcoder 122. The transcoder 122 usually resides as closeas possible to a mobile switching centre 132, because it is thenpossible to transmit speech in cellular network format between thetranscoder 122 and the base station controller 102, thus savingtransmission capacity.

The transcoder 122 transforms different digital speech coding formatsused between a public switched telephone network and a radio telephonenetwork to suit each other, for instance from the 64 kbit/s format of afixed network to a cellular radio network format (e.g. 13 kbit/s) andvice versa. The control unit 124 takes care of call control, mobilitymanagement, collection of statistics, and signalling.

As shown in FIG. 1A, connections (shown as black dots) can be made withthe switching field 120 to both a public switched telephone network 134through the mobile switching centre 132 and to a packet-switched network142. A typical terminal 136 in the public switched telephone network 134is a conventional phone or an ISDN (Integrated Services Digital Network)phone.

The connection between the packet transmission network 142 and theswitching field 120 is established by a serving GPRS support node (SGSN)140. The task of the serving GPRS support node 140 is to transmitpackets between the base station system and a gateway GPRS support node(GGSN) 144, and to record the position of the subscriber terminal 260 inits area.

The gateway GPRS support node 144 connects a public packet transmissionnetwork 146 and the packet transmission network 142. An Internetprotocol or an X.25 protocol can be used in the interface. The gatewayGPRS support node 144 hides by encapsulation the internal structure ofthe packet transmission network 142 from the public packet transmissionnetwork 146 so that to the public packet transmission network 146, thepacket transmission network 142 seems like a sub-network and the publicpacket transmission network 146 can address packets to and receivepackets from the subscriber terminal 260 in it.

The packet transmission network 142 is typically a private network thatuses an Internet protocol and transfers signalling and tunnelled userdata. Depending on the operator, the structure of the network 142 mayvary in its architecture and protocols below the Internet protocollayer.

The public packet transmission network 146 can be the Internet, forinstance, and a terminal 148, such as a server, connected to it wants totransmit packets to the subscriber terminals 260.

FIG. 1B shows how a circuit-switched transmission link is establishedbetween the subscriber terminal 260 and the public switched telephonenetwork terminal 136. In the figures, a thick line shows how data istransmitted through the system over an air interface 170 to an antenna112, from the antenna to the transceiver 264 and from there, aftermultiplexing in the multiplexer 116, over the transmission link 160 tothe switching field 120 which has an output to a connection between theswitching field and the transcoder 122. Data is transmitted on from themobile switching centre 132 through a connection to the terminal 136connected to the public switched telephone network 134. In the basestation 100, the control unit 118 controls the multiplexer 116 inperforming the transmission, and in the base station controller 102, thecontrol unit 124 controls the switching field 120 in making a correctconnection to the transcoder 122.

FIG. 1C shows a packet-switched transmission link. A portable computer152 is now connected to the subscriber terminal 260. A thick line showshow the data being transmitted advances from the server 148 to theportable computer 152. Data can naturally also be transmitted in theopposite transmission direction, i.e. from the portable computer 152 tothe server 148. The data advances through the system over the airinterface, i.e. Um interface, 170 from the antenna 112 to thetransceiver 264, and from there, after multiplexing in the multiplexer116, over the transmission link 160 in the Abis interface to theswitching field 120, from which a connection has been established to anoutput to the serving GPRS support node 140 in the Gb interface. Fromthe serving GPRS support node 140, the data is transmitted over thepacket transmission network 142 through the gateway GPRS support node144 to the server 148 connected to the public packet transmissionnetwork 146.

For clarity's sake, FIGS. 1B and 1C do not show a case where bothcircuit-switched and packet-switched data is transmitted simultaneously.This is, however, completely possible and common, since free capacitycan flexibly be taken into use from circuit-switched data transmissionto packet-switched transmission. A network can also be built, in whichonly packet data is transmitted. In such a case, the structure of thenetwork can be simplified.

Let us yet again examine FIG. 1C. The network part of the cellularpacket network accordingly comprises the base station 100 and thetransceiver 264 implementing the Um interface in the base station 100.

In addition to above, GPRS has two specific elements: a channel codecunit CCU and a packet control unit PCU. The tasks of CCU include channelcoding including FEC (Forward Error Coding), interleaving andincremental redundancy combination, radio channel measuring functions,such as the quality level of the received signal, reception power of thereceived signal, and information related to the measurement of timingadvance. The tasks of PCU include LLC (Logical Link Control) framesegmentation and reassembly, ARQ (Automatic Repeat Request) functions,PDCH (Packet Data Channel) scheduling, channel access control, and radiochannel management functions.

CCU 182 resides in the base station 100 and depending on theimplementation, it can be considered to be a time-slot-specific ortransceiver-specific unit. PCU 180A/180B is connected to CCU 182 overthe Abis interface. PCU can reside in the base station 100, base stationcontroller 102, or serving GPRS support node 140. FIG. 1C shows PCU inthe base station controller 102 or serving GPRS support node 140, butfor clarity's sake, not in base station 100.

In the following examples, the first transceiver is a subscriberterminal and the second transceiver is a base station transceiver,without being limited to these solutions, however.

Let us next examine a method according to a preferred embodiment of theinvention. The first transceiver transmits data to the secondtransceiver in data blocks. For the second transceiver to identify thedata blocks, the first transceiver gives the data blocks identifiersfrom a finite identifier space. In this example, the identifier spacecomprises identifiers 0, 1, 2, and 3. Like the data blocks, theidentifiers are also in bit format. The identifiers are reservedcyclically in such a manner that when the last identifier is used, thecycle starts from the beginning. The second transceiver maintainsinformation on the position of a window belonging to the finiteidentifier space. In this example, the size of the window is twoidentifiers. In a preferred embodiment of the invention, the size of thewindow can generally be at most half of the size of the identifierspace. The identifiers thus repeat in cycles in the data blocks. Inother words, data blocks of different cycles have the same identifiersand correspondingly positions according to the identifiers in the windowspace, even though typically, the data blocks of different cyclescomprise different data and are different data blocks. Data blockshaving the same identifier in the same cycle are the same data blocks.

Let us examine FIG. 2, in which a table illustrates a method of apreferred embodiment. The leftmost column numbers different timeinstants, the next column gives the identifier of the data block beingtransmitted at each time, the following column indicates the success ofthe decoding of the received data block, the next column shows theposition of the window maintained by the second transceiver, and therightmost column shows the content of the memory of the secondtransceiver. The identifier space comprises the identifiers 0, 1, 2, and3. In FIG. 2, at time instant 0, the second transceiver receives a datablock having the identifier 0. The reception is successful. The windowmaintained by the second transceiver comprises the identifiers 0 and 1in this situation. In the table of FIG. 2, the window is marked W. Thememory, to which the data blocks whose reception fails are stored, isempty. At time instant 1, the reception of a data block having theidentifier 1 to the second transceiver fails. This data block is thenstored temporarily to the reception memory. The second transceiversignals to the first transceiver a need to retransmit. At time instant2, the second transceiver re-receives the data block having theidentifier 1. The receiver knows that there is a data block equippedwith the same identifier in the reception memory, and since theidentifier (1) in question has been in the window all the time, the datablocks are the same and they can be combined. The combination is decodedsuccessfully and the reception memory can now be emptied.

At time instant 3, the second transceiver re-receives the same datablock equipped with the identifier 1 that the first transceiver hastransmitted erroneously for instance due to faulty signalling. Thereception of this data block fails and the data block is stored in thereception memory. At time instant 4, the first transceiver transmits ablock equipped with the identifier 2, and the second transceiver failsto decode it. The identifier 2 is not in the identifier space windowmaintained by the second transceiver, so the window is shifted to bringthe identifier 2 inside it. After the shift, the window comprises thevalues 1 and 2. The block whose reception failed is stored into thememory. At time instant 5, the second transceiver re-receives the blockequipped with the identifier 2. The reception memory contains a datablock having the same identifier, and because the identifier (2) hasbeen in the window all the time, the data blocks are the same and can becombined. The combination is decoded successfully and the block can bedeleted from the reception memory.

At time instant 6, the second transceiver receives a data block havingthe identifier 3 and decodes it successfully. The identifier 3 is not inthe identifier space window maintained by the second transceiver, so thewindow is shifted to bring the identifier 3 inside it. After the shift,the window comprises the values 2 and 3. The identifier 1 is thusoutside the window. The stored data block having the identifier 1 whosedecoding failed is deleted from the memory. At time instant 7, thesecond transceiver receives a data block having the identifier 0, andthe window shifts cyclically in such a manner that it contains theidentifiers 3 and 0. At time instant 8, the second transceiver receivesa data block having the identifier 1, but does not combine it with thedata block equipped with the same identifier and received earlier attime instant 3, because the identifier 1 has been outside the windowsince the transmission at time instant 3. In practice, combination wasprevented in the presented embodiment in such a manner that the blockwas already deleted from the memory when it dropped out of the window attime instant 6.

There are three different methods to shift, i.e. update the position of,the window in the identifier space. In the first method, when the secondtransceiver receives a data block that has no position according to itsidentifier in the window, the second transceiver shifts the window insuch a manner that said position according to the identifier settleslast in the window. The first method was described above in FIG. 2. Inthe second method, the packet control unit 180A/180B containing the ARQprotocol implementation transmits to the channel codec unit 182 a signalthat comprises information on the position of the window of the secondtransceiver in the identifier space. In comparison with the firstmethod, the second method requires more signalling. In the third method,the channel codec unit 182 examines the ACK (acknowledgement) messages,i.e. messages comprising information that no more retransmissions areneeded, transmitted from the packet control unit 180A/180B through thechannel codec unit to the subscriber terminal. The drawback in the thirdmethod is that the ACK messages can be complex to the channel codecunit, which shows as difficulties in decoding.

Next, a preferred embodiment of the invention for transmitting data fromthe first transceiver to the second transceiver is described by means ofthe method block diagram of FIG. 3. In the method, the first transceivertransmits information in data blocks to the second transceiver. Theblocks comprise identifiers that are reserved cyclically from a finiteidentifier space. The second transceiver maintains information on theposition of a window belonging to the finite identifier space, and thisinformation is utilised in combining re-received blocks. The followingexample describes a possible implementation, but the preferredembodiments of the invention are not limited to the described signallingmethods, as is clear to a person skilled in the art.

The execution of the method is started from block 300 in the blockdiagram. In block 300, a data block is channel-coded in the firsttransceiver to a coded data block using a selected channel codingmethod.

In block 302, the first transceiver transmits the coded data block tothe second transceiver. In block 304, the second transceiver receivesthe data block from the first transceiver. If the position according tothe identifier of the received data block is not in the window, thesecond transceiver shifts the window in the identifier space itmaintains to bring the position according to the identifier of the datablock in question to the window following the window shift. Thereception memory is also checked and if after the window shift, itcontains a data block whose position according to its identifier is notin the window following the window shift, said data block is deletedfrom the reception memory. This takes place in block 306.

Next, the received data block is decoded in block 308 of the blockdiagram. Block 310 tests the success or failure of the reception of thedata block. If the reception of the data block is successful 312, theprocedure can start from the beginning to transmit a new data block.

If the test in block 310 shows that the decoding has failed (block 314),the data block whose reception failed is stored in the reception memoryin block 316. Failed reception usually means that the second transceivercould not decode the received data block. This is detected either withan error detection code or in that the error correcting code cannot at asufficient accuracy correct the errors occurred in the channel. If thesecond transceiver cannot decode the data block, the data block needs tobe retransmitted.

Next, in block 318, a retransmission request of the data block istransmitted from the second transceiver to the first transceiver. Theretransmission request can be a NACK (Negative Acknowledgement) message,for instance. Correspondingly, when no more retransmissions arenecessary, an ACK (Acknowledgement) message can be transmitted. Inpractice, this can be done in such a manner, for instance, that when CCUdetects an error, it transmits a bad frame indicator to PCU and PCUgenerates a NACK message and transmits it to CCU for transmission to theradio path.

As a result of this retransmission request, the first transceiverretransmits the coded data block in block 320 to the second transceiver.

The second transceiver receives the retransmitted data block in block322, after which the window and reception memory are checked in block324. If the position according to the identifier of the received datablock is not in the window, the second transceiver shifts the window inthe identifier space it maintains to bring the position according to theidentifier of the data block to the window following the window shift.The reception memory is also checked and if after the window shift, itcontains a data block whose position according to its identifier is notin the window following the window shift, said data block is deletedfrom the reception memory. These actions are always related to thereception of a data block. Next, the second transceiver checks in block326 whether the retransmitted data block and the earlier received datablock are the same. The check is done in such a manner that if theearlier received data block according to the identifier in question isin the reception memory, the retransmitted data block and the earlierreceived data block are considered the same.

Next, in block 328, the coded data block whose reception failed and there-received coded data block that are considered the same are combined.The combination can be done, because both data blocks are differentversions of the same coded data block. Finally, in block 308, thechannel coding of the combined coded data blocks is decoded. Thedecoding is done in the same manner as the decoding of a single datablock. Because it has been verified by means of the preferred embodimentof the invention that the data blocks to be combined are data blockshaving the same identifier and cycle, i.e. the same data blocks,decoding will succeed. The decoding of the channel coding produces thedata block containing user data.

A retransmission need can also be detected in the case of other datablocks than those whose reception fails. The data blocks that werereceived successfully but need to be retransmitted can be subjected tothe same method steps as described above in the case of data blockswhose reception failed. It is, however, not very sensible to store adata block into the reception memory and combine and decode it, if itwas already once successfully received.

Let us next examine a second preferred embodiment of the invention bymeans of FIG. 4. In this embodiment, the second transceiver, whenreceiving data blocks from the first transceiver, marks as successfullyreceived the identifiers of the data blocks that it can decode, i.e.that are not defective.

In the example of FIG. 4, the identifiers of the data blocks and thesuccessful transmissions and decodings are similar to those described inthe example of FIG. 2. Successfully decoded data blocks are marked withO in the windowing table of FIG. 4. At time instant 0, a block havingthe identifier 0 is received and decoded successfully. Said block ismarked as having been received successfully. A data block having theidentifier 1 and received with errors at time instant 1 is not marked ashaving been received successfully. It is stored in the reception memory.At time instant 2, the retransmitted block having the identifier 1 isreceived and this time, it can be decoded successfully. It is marked assuccessfully received. At time instant 3, an unnecessarily retransmitteddata block having the identifier 1 is received. Because said data blockwas already marked as successfully received, it is not stored in thereception memory, as was done in the example of FIG. 2. This way, memoryusage is more efficient than in the alternative described earlier.

Let us examine more closely the implementation of the first and secondtransceivers by means of FIG. 5. Only the parts of the transceivers thatare essential for the invention are described. The first transceiver 260and the second transceiver 264 have already been described in theexamples of FIGS. 1A to 1C, in which the first transceiver 260 is asubscriber terminal and the second transceiver 264 is a base stationtransceiver.

The first transceiver 260 comprises a channel codec 500 for channelcoding a data block 502 to a coded data block using a selected channelcoding method and for puncturing the coded data block. The channel codecis operationally connected to means 504 for attaching identifiers todata blocks for identification. The identifiers are selected cyclicallyfrom a finite identifier space. The means 504 are implemented by meansof a counter, for instance. The first transceiver 260 further comprisesa modulator 506 that modulates digital signals to a radio-frequencycarrier and transmits data 170A to the second transceiver 264 and, whennecessary, retransmits data blocks to the second transceiver. The firsttransceiver also comprises means 508 for receiving a retransmissionrequest sent by the second transceiver 264. The transceiver alsocomprises a control block 510 that controls the operation of thedifferent parts of the device. The control block is typicallyimplemented by means of a processor and suitable software. In addition,the first transceiver 260 can comprise filters and power amplifiers andother parts known to a person skilled in the art.

The second transceiver 264 comprises reception means 512 for receivingdata blocks transmitted by the first transceiver 260. The receptionmeans 512 comprise a filter that prevents frequencies outside a desiredfrequency band. Next, the signal is converted to an intermediatefrequency or directly to baseband, and the resulting signal is sampledand quantized in an analogue-to-digital converter 514. A possibleequalizer 516 compensates for interference caused by multipathpropagation, for instance.

From the equalizer, the signal is forwarded to a detector 516, fromwhich the detected signal is forwarded to a channel decoder 520 thatdecodes the received coded data block. From the decoder, the signal 522is forwarded to other parts of the transceiver.

The second transceiver 264 further comprises control means 524 fordetecting a retransmission need of a received coded data block, i.e.whether the data block could be decoded or not, and a reception memory528, to which data blocks whose reception fails are stored. Thetransceiver further has means 526 for transmitting, controlled by thecontrol means and using the radio link 170B, a retransmission request ofa coded data block to the first transceiver 260.

The second transceiver 264 further comprises means 524 for combiningdata blocks defined as the same. The channel decoder 520 decodes thechannel coding of the combined coded data block.

The second transceiver 264 comprises means 530 for maintaining a windowin a section of a finite identifier space, and windowing means 524, 530for windowing received data blocks to positions according to theidentifiers they comprise in the window of the identifier space and,when a data block is received whose position according to its identifieris not in the window, for shifting the window in the identifier space insuch a manner that the position according to the identifier of thereceived data block is in the window following the shift.

The control block 524 of the second transceiver also takes care ofdeleting the data block from the reception memory 528 if the positionaccording to the identifier of the data block is not in the windowfollowing the window shift. In some of the preferred embodiments of theinvention, the control block takes care of marking a successfullyreceived data block as successfully received.

The method steps used in the preferred embodiments of the invention areimplemented by programs in the transceivers. A hardware implementationis also possible, for instance ASIC (Application Specific IntegratedCircuit) or a control logic built of separate components.

In addition to incremental redundancy, the preferred embodiments of theinvention can also be utilised in an implementation in which the EGPRSservice is generally used. Another possible implementation is that apacket control unit at a distance from the base station controls theoperation of the base station.

Even though the invention has been explained in the above with referenceto examples in accordance with the accompanying drawings, it is obviousthat the invention is not restricted to them but can be modified in manyways within the scope of the inventive idea disclosed in the attachedclaims.

1. A method, comprising: reserving identifiers cyclically from a finiteidentifier space; attaching identifiers to data blocks to be transmittedfor identification; transmitting the data blocks from a firsttransceiver; receiving the data blocks by a second transceiver;maintaining information at the second transceiver on the position of anincremental redundancy specific window belonging to the finiteidentifier space; and when reception of a data block of the data blocksby the second transceiver fails, storing at the second transceiver thedata block into a reception memory, retransmitting said data block fromthe first transceiver with the same identifier as the originaltransmission, re-receiving said data block by the second transceiver,comparing at the second transmitter the identifiers of a re-receiveddata block and an earlier received data block with each other, definingthe re-received data block and the earlier received data block as thesame, if the re-received data block and the earlier received data blockhave a same identifier and it is detected that said same identifier hasbeen in the incremental redundancy specific window maintained by thesecond transceiver continuously from a reception time of the earlierreceived data block to a reception time of the re-received data block,and combining the data blocks defined as the same.
 2. The method ofclaim 1, wherein when the second transceiver receives a particular datablock of the data blocks whose identifier is not in the incrementalredundancy specific window, the second transceiver shifts theincremental redundancy specific window cyclically forward in theidentifier space in such a manner that the identifier is in theincremental redundancy specific window following the window shift. 3.The method of claim 2, wherein when after the window shift the receptionmemory contains the data block of the data blocks whose positionaccording to its identifier is not in the incremental redundancyspecific window following the window shift, said data block is deletedfrom the reception memory.
 4. The method of claim 3, wherein if anearlier received data block having a same identifier as the particulardata block is in the reception memory, the re-received particular datablock and the earlier received data block are defined as the same. 5.The method of claim 1, wherein information is maintained for eachidentifier belonging to the incremental redundancy specific window onwhether a corresponding data block corresponding to the identifier wassuccessfully received.
 6. The method of claim 5, wherein when receptionfails for a particular data block, but the particular data block'sidentifier has a marking of a successful reception, the particular datablock is not stored in the reception memory.
 7. A radio system,comprising: a first transceiver; and a second transceiver, wherein thefirst transceiver and the second transceiver are in radio contact witheach other, wherein the first transceiver comprises a data blockformation unit configured to form data blocks for transmission in such amanner that the data blocks are given identifiers for identification,the identifiers being reserved cyclically from a finite identifierspace, a first reception unit configured to receive a retransmissionrequest transmitted by the second transceiver, and a first transmissionunit configured to transmit the data blocks to the second transceiverand for re-transmitting a requested data block to the secondtransceiver, and wherein the second transceiver comprises a secondreception unit configured to receive the data blocks transmitted by thefirst transceiver and for receiving the requested data blockretransmitted by the first transceiver, a detection unit configured todetect a failure in the reception of a particular data block, areception memory to which the particular data block whose receptionfails is stored, a second transmission unit configured to transmit tothe first transceiver a retransmission request of the requested datablock, a maintenance unit configured to maintain information on theposition of an incremental redundancy specific window belonging to thefinite identifier space, a comparison unit configured to compareidentifiers of the requested data block and the particular data blockwith each other and for defining the requested data block and theparticular data block as the same, if they have a same identifier andsaid identifier has been in the increniental redundancy specific windowmaintained by the second transceiver continuously from a reception timeof the particular data block to the reception time of the requested datablock, and a combination unit configured to combine data blocks definedas the same.
 8. The radio system of claim 7, wherein the secondtransceiver further comprises means for shifting the incrementalredundancy specific window in the identifier space, when the secondtransceiver receives a specific data block whose identifier is not inthe incremental redundancy specific window, in such a manner that theposition of the identifier of the specific data block is in theincremental redundancy specific window following the window shift. 9.The radio system of claim 8, wherein the second transceiver furthercomprises a deletion unit configured to delete the particular data blockfrom the reception memory, if the position of the identifier of theparticular data block is not in the incremental redundancy specificwindow following the window shift.
 10. The radio system of claim 9,wherein the second transceiver further comprises a definition unitconfigured to define a re-received data block and an earlier receiveddata block as the same, if the position according to an identifier ofthe re-received identifier is in the incremental redundancy specificwindow and if the reception memory contains an earlier received datablock having a same identifier as the re-received data block.
 11. Theradio system of claim 7, wherein the second transceiver furthercomprises a marking unit configured to mark a successfully received datablock as successfully received.
 12. A receiver, comprising: receptionmeans for receiving data blocks transmitted by the transmitter of theradio system and for receiving a requested data block retransmitted bythe transmitter, the data blocks comprising identifiers reservedcyclically from a finite identifier space; detection means for detectinga failure in the reception and decoding of a data block of the datablocks; storage means for storing the data block whose reception fails;maintenance means for maintaining information on a position of anincremental redundancy specific window belonging to the finiteidentifier space; comparison means for comparing identifiers of are-received data block and an earlier received data block with eachother and for defining the re-received data block and the earlierreceived data block as the same, if the re-received data block and theearlier received data block have a same identifier and said sameidentifier has been in the incremental redundancy specific windowmaintained by the maintenance means continuously from a reception timeof the earlier received data block to a reception time of there-received data block; combination means for combining and decodingdata blocks defined as the same.
 13. A method, comprising: receivingdata blocks transmitted and retransmitted by a transmitter, the datablocks comprising identifiers reserved cyclically from a finiteidentifier space; maintaining information on a position of anincremental redundancy specific window belonging to the finiteidentifier space; and when the reception of a data block of the datablocks fails, storing the data block into a reception memory as anearlier received data block, re-receiving the data block as are-received data block, comparing identifier of the re-received datablock and the earlier received data block, defining that the earlierreceived data block and the re-received data block are the same, if theearlier received data block and the re-received data block have a sameidentifier and if it is detected that said same identifier has been inthe incremental redundancy specific window maintained by the receivercontinuously from a reception time of the earlier received data block toa reception time of the re-received data block, the detection beingbased on the information on the position of the incremental redundancyspecific window, and combining and decoding data blocks defined as thesame.
 14. A mobile station, comprising: reception means for receivingdata blocks transmitted by a transmitter of a radio system and forreceiving a data block retransmitted by the transmitter, the data blockscomprising identifiers reserved cyclically from a finite identifierspace, and the mobile station configured to be in radio contact in aradio system with the transmitter; detection means for detecting afailure in the reception and decoding of a particular data block of thedata blocks; storage means for storing the particular data block whosereception fails; maintenance means for maintaining information on aposition of an incremental redundancy specific window belonging to thefinite identifier space, and comparison means for comparing theidentifiers of a re-received data block and an earlier received datablock with each other and for defining the re-received data block andthe earlier received data block as the same, if they have a sameidentifier and said same identifier has been in the incrementalredundancy specific window maintained by the maintenance meanscontinuously from a reception time of the earlier received data block toa reception time of the re-received data block, and combination meansfor combining and decoding data blocks defined as the same.
 15. A basestation, comprising: reception means for receiving data blockstransmitted by a transmitter of a radio system and for receiving a datablock retransmitted by the transmitter, the data blocks comprisingidentifiers reserved cyclically from a finite identifier space, and thebase station configured to be in radio contact in the radio system withthe transmitter; detection means for detecting a failure in thereception and decoding of a particular data block of the data blocks;storage means for storing the particular data block whose receptionfails, maintenance means for maintaining information on a position of anincremental redundancy specific window belonging to the finiteidentifier space, and comparison means for comparing identifiers of are-received data block and an earlier received data block with eachother and for defining the data blocks as the same if they have a sameidentifier and said same identifier has been in the incrementalredundancy specific window maintained by the maintenance meanscontinuously from a reception time of the earlier received data block toa reception time of the re-received data block, and combination meansfor combining and decoding data blocks defined as the same.
 16. Areceiver, comprising: a demodulator configured to receive data blockstransmitted by a transmitter of a radio system and to receive a datablock retransmitted by the transmitter, the data blocks comprisingidentifiers reserved cyclically from a finite identifier space, and thereceiver configured to be in radio contact in the radio system with thetransmitter; a controller configured to detect a failure in thereception and decoding of a particular data block of the data blocks; areception memory to which the particular data block whose receptionfails is stored; a control logic configured to maintain information on aposition of an incremental redundancy specific window belonging to thefinite identifier space; a controller configured to compare identifiersof a re-received data block earlier received data block with each otherand to define the re-received data block and the earlier received datablock as the same if they have a same identifier and said sameidentifier has been in the incremental redundancy specific windowmaintained by the control logic continuously from a reception time ofthe earlier received data block to a reception time of the re-receiveddata block; a controller configured to combine and decode data blocksdefined as the same.
 17. A radio system, comprising: a firsttransceiver; and a second transceiver, wherein the first transceiver andthe second transceiver are in radio contact with each other, wherein thefirst transceiver comprises means for forming data blocks fortransmission in such a manner that the data blocks are given identifiersfor identification, the identifiers being reserved cyclically from afinite identifier space, means for receiving a retransmission requesttransmitted by the second transceiver, and means for transmitting thedata blocks to the second transceiver and for re-transmitting arequested data block to the second transceiver, and wherein the secondtransceiver comprises means for receiving the data blocks transmitted bythe first transceiver and for receiving the requested data blockretransmitted by the first transceiver, means for detecting a failure inthe reception of a particular data block, means for storing theparticular data block whose reception fails, means for transmitting tothe first transceiver a retransmission request of the requested datablock, means for maintaining information on the position of anincremental redundancy specific window belonging to the finiteidentifier space, means for comparing identifiers of the requested datablock and the particular data block with each other and for defining therequested data block and the particular data block as the same, if theyhave a same identifier and said identifier has been in the increnientalredundancy specific window maintained by the second transceivercontinuously from a reception time of the particular data block to thereception time of the requested data block, and means for combining datablocks defined as the same.